package com.hyts.agent.filter;

import com.hyts.classcode.enhance.bytebuddy.agent.ClassAgentTransformer;
import lombok.AllArgsConstructor;

/**
 * project-name:coffice-agent
 * package-name:com.hyts.agent.core.interceptor
 * author:Libo/Alex
 * create-date:2019-02-15 11:11
 * copyright:libo-hyts-github
 * email:libo2dev@aliyun.com
 * description:此类主要用于: 操作aspect拦截总体控制核心拦截器
 */
@AllArgsConstructor
public abstract class AgentAspectInterceptor extends ClassAgentTransformer {


    @Override
    public Object getInterceptor() {
        MethodExecuteInterceptor methodExecuteInterceptor =
                new MethodExecuteInterceptor();
        methodExecuteInterceptor.setMethodInterceptor(getMethodInterceptor());
        return methodExecuteInterceptor;
    }

    protected abstract MethodInterceptor getMethodInterceptor();

}
